package com.example.lt.service.user;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.lt.entity.dto.AssignRoleDTO;
import com.example.lt.entity.dto.AuthorityDTO;
import com.example.lt.entity.user.Role;
import com.example.lt.entity.user.Tree;
import com.example.lt.util.Result;

import java.util.List;

/**
 * @Author 小涛Tao
 * @Date: 2024/08/16/18:48
 * version 1.0 注释：
 **/
public interface RoleService extends IService<Role> {

    /**
     * 获取权限，树形结构
     * @return
     */
    List<Tree> tree();

    /**
     * 为用户分配角色
     * @param assignRoleDTO
     * @return
     */
    Result gaveRole(AssignRoleDTO assignRoleDTO);

    /**
     * 删除角色
     * @param id
     * @return
     */
    Result removeRole(String id);

    /**
     * 给角色分配权限
     * @param authorityDTO
     * @return
     */
    Result gavePermission(AuthorityDTO authorityDTO);
}
